home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Languages / Mops 2.7 / Quick Edit ƒ / Quick Edit 2.6 ReadMe < prev    next >
Text File  |  1995-06-19  |  15KB  |  363 lines

  1.  
  2. This information has been updated for version 2.6
  3.  
  4. **** WHAT THIS IS ****
  5.  
  6. Quick Edit (QE) is a programmer's source code editor intended for use
  7. with Mops, Michael's Object Oriented Programming System, and System 7.
  8. Typed Mops commands can be executed directly from an editor window, thus 
  9. avoiding copy-switch-paste.
  10.  
  11. Also included are a set of text files that comprise a Subject Sorted 
  12. Glossary for Mops definitions.
  13.  
  14.  
  15. **** NEW FOR VERSION 2.6 ****
  16.  
  17. • We now have a word wrap feature.  When activated, word wrap will occur as
  18. expected, with a couple of unique characteristics.  One important
  19. difference in the way QE wraps text, compared to conventional word
  20. processors, is that carriage returns are still maintained at the end of
  21. each line.  This is done in order to remain compatible with the programming
  22. source code files as they are expected by most programming languages,
  23. including of course Mops.  Another advantage is that QE can remain very
  24. fast while still providing a word wrap function.  If you take a look at
  25. other text processors that word wrap you will notice a considerable slowing
  26. when wrap is turned on.  QE does not slow down at all when redisplaying a
  27. window.
  28.  
  29. Note that QE's word wrap does much more than simply insert a CR
  30. automatically as you type.  QE will look at the paragraph in which the
  31. cursor resides and perform wrapping on the entire paragraph, and only that
  32. paragraph, automatically as you type.  So there is the second important
  33. difference from the norm in QE's word wrap.  Word wrapping will *only*
  34. occur in the current paragraph ( a paragraph in QE is any text that is
  35. delimited by blank lines).  This means that you could turn on word wrap in
  36. the middle of some source code with very long lines and your typed text
  37. would be wrapped while not affecting the rest of the file.  Be careful
  38. though, because if you forget that wordwrap is activated and start typing
  39. in some long source code lines, then those lines will get split up and a
  40. simple undo is not available (although a Revert is a good way to recover
  41. from this if necessary).  WordWrap is activated through the WordWrap...
  42. menu command under the Edit menu.  A bold "W" is also placed at the lower
  43. left of the window as a reminder.  WordWrap only applies to files that you
  44. specify.  WordWrap activation and length is saved with each file.
  45.  
  46.  
  47. • A couple of printing bugs are fixed.  PageSetup... should no longer
  48. crash.  On some printers a few lines at the end of the page were not being
  49. printed.  This has been fixed.
  50.  
  51.  
  52.  
  53. **** WHAT YOU NEED TO USE QUICK EDIT ****
  54.  
  55. 1) System 7.x
  56.  
  57. 2) Mops (Michael's Object Oriented Programming System).
  58.  
  59. 3) The provided Mops Glossary file.
  60.  
  61.  
  62. Actually, 1) and 2) are not absolutely required as Quick Edit will function
  63. quite well as a stand-alone text processor without System 7 or Mops.  In that
  64. case you don't need 3) either.
  65.  
  66.  
  67. **** HOW TO USE QUICK EDIT ****
  68.  
  69. 1) Launch both Mops and Quick Edit.
  70.  
  71. 2) Now you should be able to execute typed Mops instructions from a QE
  72. window as if you were typing into the Mops window.  The major difference
  73. being that what you type can be saved as a (QE) text file.  Remember that
  74. you must use the enter key, not the return key, to execute commands.  
  75.  
  76.  
  77. **** ACTIVE GLOSSARY ****
  78.  
  79.   ***IMPORTANT***
  80.   You must keep the file "Mops Glossary" in the same folder as Quick Edit.
  81.  
  82.   While using QE it is possible to summon the glossary to look up a
  83.   definition in either of 2 ways.  First, you may highlight a word in a
  84.   QE window and then invoke the Mops/Glossary menu command (or
  85.   command-Y).  If found in the glossary, the word and its definition
  86.   will appear in a special window.  A second way to use the glossary
  87.   is to just invoke the Mops/Glossary menu command and then begin
  88.   typing the word that you wish to look up.  MacForth users will recognize
  89.   this as the Online Glossary feature from the Sibley Editor.
  90.   
  91.   You may copy text from the Active Glossary.
  92.   
  93.   For each definition in the Active Glossary we have the stack effect
  94.   immediately to the right of the name.  Further to the right, on the same
  95.   line, we have the Subject Name and File Name (the name of the Mops file
  96.   that contains the source code for the word) in SubjectName/FileName format.
  97.   
  98.   We have included a file, Stack Notation, to define the stack effect
  99.   notation used here.
  100.   
  101.   For most subjects we have a Subject Glossary file in the folder Subject 
  102.   Glossary.  In these files you will find all related words grouped together 
  103.   in a logical manner by function, rather than by ASCII order.  I find
  104.   that printing all of the Subject Glossary files and placing them in a
  105.   hole-punch binder with index tabs is an excellent way to keep a quick
  106.   reference.  You can also print the ASCII sorted glossary if you want,
  107.   it's just a text file, but it is really intended for active use with QE.
  108.   
  109.   From the Active Glossary you can obtain the source file name, see
  110.   where the source file is located from the Mops File Index, and then
  111.   open the source file to see the actual definition.  Note that one can
  112.   now easily open the source for already compiled code simply by
  113.   highliting a word in QE and invoking the Mops/Open Source menu command
  114.   (command-1), as long as Mops itself is also running.
  115.   
  116.   You may delete and add to the glossary yourself, but only if you open
  117.   the file "Mops Glossary" as a normal edit file, not as it is opened
  118.   as the QE glossary window.  Added definitions MUST be in ASCII order
  119.   and begin in the first column on a new line.  Only definition names may
  120.   begin in the first column.
  121.  
  122. **** SUBJECT GLOSSARY ****
  123.  
  124.   ***IMPORTANT***
  125.   You must keep the folder "Subject Glossary" in the same folder as Quick Edit.
  126.   
  127.   We have included a set of normal text files that comprise a "Subject Sorted 
  128.   Glossary".  The purpose of these files is to allow the programmer to quickly
  129.   review the available word set for a given category of words.  This avoids 
  130.   having to read the entire Glossary (which is ascii sorted) in order to find
  131.   out what is available.
  132.  
  133.   You can directly open any of these files via menu access to the Subject 
  134.  (sorted) Glossary.  Under the Mops menu.  
  135.  
  136. **** TIPS ****
  137.  
  138. Position both the Mops window and your current QE window so both are
  139. visible.
  140.  
  141. Pressing enter will execute either just the selected range, or if there
  142. is no selection the entire line will be executed.  Multiple lines or an
  143. entire file may be executed this way.
  144.  
  145. Pressing enter will normally advance the cursor to the end of the next
  146. line.  Hold down the option key to keep the cursor on the same line.
  147.  
  148. Change the file Mops.paths to include the directory that your QE files
  149. are in and you will be able to use the QE menu commands Load… ,
  150. Save&Load…,  and Save&Reload….
  151.  
  152.  
  153. **** ABOUT QUICK EDIT ****
  154.  
  155. Quick Edit is written in MacForth and is, for the large part, the 
  156. MacForth text editor, or Sibley Editor, with extensions to use Apple Events 
  157. for Mops communication.  I also added my favorite tweaks to the editor.  QE 
  158. behaves in a standard manner and so should be fairly easy to learn.  
  159. MacForth users will of course feel pretty much at home except for a few
  160. exceptions that are explained later.  
  161.  
  162. I wrote QE as a tool to make it easier for me to use Mops.  If one
  163. has a desire to explore Forth object oriented programming ( FOOP?
  164. Forth++? ), then a look at Mops is a must.  You will likely find that you
  165. will soon stop exploring and begin writing useful code at a very high
  166. level of productivity.
  167.  
  168.  
  169.  Doug Hoffman  28Mar92
  170.                  4Jun92 v1.1
  171.                  6Dec92 v1.2
  172.                  2Mar93 v1.3
  173.                 27Dec93 v2.4
  174.                 27Mar94 v2.4.1
  175.                 05Nov94 v2.5
  176.  
  177.  Compuserve  72310,1743
  178.  
  179.  565 Countryside Lane
  180.  Oakland, Michigan  48363-1401
  181.  
  182.  
  183.  
  184.  
  185.  
  186. **** DETAILS OF USING QUICK EDIT ****
  187.  
  188. Up to 20 files (windows) can be open at the same time.  The open QE file
  189. names will appear under the Windows menu and will be preceded by bullets
  190. if the files have unsaved changes.
  191.  
  192. There are several useful text search shortcuts that bypass the Find...
  193. dialog.  Option-Doubleclick on a word to find the first occurrence. A
  194. subsequent Command-G (Find Same) will then find the next occurrence.
  195. Any time a search fails a simple beep will be issued and the cursor will
  196. remain where it last was.  Command-Doubleclick on a word to do a backwards 
  197. search (i.e. attempt to find the first prior occurrence).  Option-
  198. Command-Doubleclick on a word to find the next occurrence.
  199.  
  200. If the Text Search dialog is summoned (via Command-F or the menu) any
  201. highlited text will automatically become the "Search for" parameter.  If
  202. no text was highlited then the prior "Search for" text will remain.
  203.  
  204. All searches begin at the current selection point and end at the end of
  205. the file.  If the Text Search dialog is used one can also search all
  206. files in the same directory as the open file.  Holding down the shift
  207. key when either summoning the Text Search dialog or doing a Find Same
  208. (Command-G) will cause the search to be initiated from the beginning of
  209. the file.
  210.  
  211. Command-` (Enter Search$) will enter the highlited text as the search
  212. string without summoning the Text Search dialog.  This is useful for
  213. "loading" some text to search for in one window and then moving to another 
  214. window to do the search.  A Command-Shift-G will start the search
  215. at the beginning of the file.  This can be handy.  Command-Shift-F will 
  216. also start the search at the beginning of the file, but will summon the
  217. Text Search dialog.
  218.  
  219. A Popup menu is available that will list all classes and their methods
  220. for the current window.  A ctrl-click in a QE window that contains Mops source
  221. code will yield the menu.  The menu slection will cause a jump to the
  222. source code for the class or method.
  223.  
  224. Up to 10 bookmarks can be set by pressing Command-Shift-J followed
  225. by a number (0 through 9).  One then jumps to these bookmarks by pressing 
  226. Command-J followed by pressing the corresponding single digit number key.
  227.  
  228. Modifier keys for cursor movement works as follows:
  229.  
  230. Option left/right        move cursor one word
  231. Option up/down            move one line
  232. Command left/right        move to beginning or end of line
  233. Command up/down            move to beginning or end of screen or prev/next screen
  234. Command-Option up/down    move to beginning or end of file
  235. Option-Delete            delete previous word
  236. Command-Backspace        delete to beginning of file
  237. Command-Delete            delete to end of file
  238.  
  239.  
  240.  
  241. MiniPrint...  is intended for use only with high resolution printers having 
  242. scalable fonts such as LaserWriters or the StyleWriter.  MiniPrinting 
  243. will print in a very small Helvetica font and allow for a paper savings 
  244. of 3-4 to 1 in most cases.  I find this useful for printing drafts
  245. and reducing the quantity of paper used.
  246.  
  247. If the printed page seems wrong, try using the Page Setup...  command and
  248. select portrait orientation at 100% scale.
  249.  
  250. Note that cutting and pasting will normally delete and add extra spaces as 
  251. necessary in a fashion similar to WriteNow.  This feature is only activated 
  252. after text is highlited via a doubleclick and is then cut or copied.  Text 
  253. that is highlited via shift-extension or singleclick-drag will be cut and 
  254. pasted in the normal fashion.  
  255.  
  256. Also note that indents via tabs or spaces will be repeated on subsequent lines
  257. upon return unless the option key is pressed.  Auto-Indent is toggled
  258. from the menu.
  259.  
  260. In most word processors characters such as a period (.) are treated as a word 
  261. delimiter.  So doubleclicking something like " this.word " in most word 
  262. processors will only highlite this or word, depending upon where you first 
  263. clicked.  Also, in most word processors a whole word search on " this " will 
  264. hit on " this.word " and other compounds of " .this.  " which is not what I 
  265. want.  Since Forth does not treat a period as a delimiter, I have chosen to 
  266. have Quick Edit do likewise.  This behavior may be different from what you 
  267. are used to.
  268.  
  269. The Mops menu contains a few handy Mops commands that will clear the stack
  270. or forget the hilited word.
  271.  
  272. A multiple line indent/unindent command is also available in the Special
  273. menu.
  274.  
  275. Quick Edit has a word wrap feature, but a highlited selection can also be
  276. wrapped to fit in the current window by using the Edit menu Margin command
  277. (first select the text to be wrapped to fit the window).
  278.  
  279.  
  280. **** FONTS/PRINTING ****
  281.  
  282.  
  283. The window and printer font IDs and font sizes are now resources and so
  284. can be changed to suit.  You must use a resource editor.  I know this isn't 
  285. very Mac-like, but it was easy to implement (and we're all programmers 
  286. here, right?).  
  287.  
  288. The QEF1 resources affect things as follows:
  289.  
  290. RESOURCE ID        AFFECTS                        DEFAULT VALUE
  291.  
  292. 1                window font    ID                $00C8    Modified Monaco (MUST be mono-spaced)
  293. 2                window font size            $0009
  294.  
  295. 3                miniprint font ID            $0015    Helvetica
  296. 4                miniprint font size            $0007
  297.  
  298. 7                option mini font ID            $0016    Courier
  299. 8                option mini font size        $0007
  300.  
  301. Note that the window font MUST be mono-spaced.  But this is not a requirement 
  302. for the miniprint fonts.  In fact, the Helvetica default miniprint font, which 
  303. is proportionally spaced, is used to allow two columns per page due to the 
  304. relatively high character linear density.  
  305.  
  306. We use a proper programmer's screen font that clearly distinguishes  
  307. characters that are ambiguous with the Monaco font.
  308.  
  309. When selecting a file to miniprint from the standard file dialog, pressing
  310. the option key will yield a one-column monospace (Courier) page.  This
  311. may be desirable for printing that needs accurate alignment.  You only
  312. need press the option key momentarily at the instant of file selection.
  313.  
  314. All miniprinting will yield approximately 104 lines per column (standard
  315. 81/2 x 11 inch paper) on most printers.  Note that the page numbers shown
  316. in the box upon mouse hits on the  vertical thumb scroll control don't
  317. necessarily correspond to the number of printed pages because printing will
  318. always wrap long lines.
  319.  
  320.  
  321.  
  322.  
  323. **** OTHER FEATURES ****
  324.  
  325. • Mops/Edit File (command-=) menu command.  Hilite the name of a file and then invoke
  326.   this menu command.  The file will be opened.  Also works for module filenames
  327.   without having to first append ".txt".
  328.  
  329. • There is now an "AllWindows->Right" Windows menu command.  Useful for getting all
  330.   open editor windows off to one side so the Mops window can be viewed while still
  331.   in Quick Edit.
  332.  
  333.  
  334.  
  335.  
  336. **** PACKING LIST ****
  337.  
  338. The following is a list of all files that should be present in the 
  339. Quick Edit release set:
  340.  
  341. Quick Edit ReadMe
  342.  
  343. Mops Glossary
  344.  
  345. Quick Edit 2.5 (the application)
  346.  
  347. Stack Notation
  348.  
  349. Subject Glossary  (a folder)
  350.     Arithmetic
  351.     Compiler
  352.     Console
  353.     Control Structures
  354.     Events
  355.     Floating Point
  356.     Memory
  357.     OOP
  358.     QuickDraw
  359.     Stack
  360.     Strings
  361.     System
  362.     Toolbox 
  363.